Prior Art
Many modem data transmission systems are organized in networks in compliance with a network architecture such as the IBM System Network Architecture (SNA). As an architecture, SNA specifies how the products included in the network connect and communicate with one another.
Generally, a host computer controls all the network. Some of the functions it provides include computation, program execution, access to data bases, directory services, and network management. The network management is under the control of a network management program which assists network operations, detects and reports errors and maintains statistics about network performance. In a network under SNA, the network management program is preferably IBM's NetView, a software program which runs on the host.
The host computer is connected to one or several communication controllers, the purpose of which is to manage the physical network, to control the communication links and to route data through the network. The communication controller contains the Network Control Program (NCP) which routes data and controls its flow between the communication controller and other network resources.
Further information relating to the data transmission networks, and describing particularly the functions of the two IBM softwares NetView and NCP, can be found in the IBM document "Network Program Products General Information", reference GC30-3350.
The communication controllers are linked to a plurality of workstations providing users access to the network, by means of modems and telephone lines. At the one end, a local modem converts digital signals from the communication controller into analog signals to be transmitted over the telephone line, and at the other end, a remote modem converts analog signals received over the telephone line into digital signals for the user's workstation.
Now, modems can be provided with a multiplexing system which enables several data links with one or several communication controllers to be multiplexed in the modem. In this case, the links from the communication controller(s) are attached to several ports in the modem, the data bits received from the different links on the associated ports being time multiplexed each baud time before being modulated and transmitted over the single telephone line. The remote modem is also a multiplex modem, the same number of ports being each linked to an associated workstation.
For the host to dynamically interrogate, test or configure the network, a protocol facility is provided under the control of the Network Control Program of the Communication Controller. This facility, such as Link Problem Determination Aid (LPDA), (for detailed information, see the IBM document "Link Problem Determination Aid", reference SY33-2064-0) defines the general rules of communication between the communication controller and the modem, and in particular defines the message formatting, and principally the set of operational and problem determination commands. Such commands are either unsolicited commands or solicited commands. The unsolicited commands are those commands which are automatically issued by the program NCP upon detection of a modem or line error correction. They are essentially the Modem and Line Test (MLT) and Modem and Line Status (MLS). In this case, the NetView operator only sees the report message from NCP giving the problem parameters (problem locating, problem cause, decision to be taken . . . ). The solicited commands are the whole set of operational and test commands, which are initiated by the NetView operator. As for the unsolicited commands, a report message from NCP gives the problem determination/operational command parameters at the end of the command processed.
To process the LPDA commands, hardware and software supports are necessary as well in the communication controller as in the modem.
When the modem is multiplexed between several ports, only one port is provided with the LPDA facility, because it would be expensive and useless to provide all the ports with such a facility. Indeed, for achieving such a possibility, two embodiments could be implemented. The first one would consist in providing all ports with the hardware support and the modem only with the software support, with each port being allowed to access to the common software for any LPDA command on said port. Let's assume that, during an LPDA command is being processed on a port, another command is requested on a different port; the latter command would have to be delayed, because on the one hand the common microcode is of state-driven type (not of the reentrant type) wherein intermediary states of the first command would be modified by the execution of the second common, unless the intermediary states be saved which would require a very important storage capacity of exorbitant cost, and on the other hand, it would be impossible to run a second LPDA command as long as the first command has not processed inasmuch as most of the commands (MLS, MLT, . . . ) are using the common telephone line linking the local modem to the remote modem. Such a constraint results from the use as LPDA commands of supervisory messages in the data stream, which are transmitted at a rate of one bit per baud.
A second solution which could come to one's mind, would be to provide each port with the LPDA microcode. Such a solution would be useless insofar as the subsequent commands requested while a first command is being processed, should be queued since, as it is mentioned above, it is not possible to convey the LPDA message over the telephone line as long as the first command has not been processed. Further to be expensive in view of the required storage, the solution would result in consuming an important load preventing the signal processor of the modem from managing other jobs during the time of LPDA processing.
For the above reasons, only port A of a multiplex modem is provided with the LPDA facility. Only the port of program NCP assigned to port A is sysgened with LPDA code whereas the other ports are sysgened as non-LPDA. From a problem determination standpoint, it means that probable causes and recommended actions are provided when NCP has detected a problem on port A, whereas problems which occur on another port only lead to an alert without running any probable cause algorithm. To reduce the problem determination unbalance between port A and port B, a first approach is to capitalize on the correlation number which is common, in NCP, to all port of the multiplex modem. With such a solution, if a single link problem leads to two alerts (one on port A and one on port B), the NetView operator can correlate these alerts thanks to their same correlation number. Unfortunately, this scheme requires that port A be powered on. If not, NCP Only detects a problem on port B and the NetView operator cannot take advantage of the LPDA capabilities.